#pragma once
#include "primitive.h"
#include "Point3d.h"

class CSphere :	public CPrimitive
{
public:
	CSphere(const CPoint3D& Centre, float Radius);
	~CSphere(void);

	void SetCentre(CPoint3D& centre);
	void SetRadius(float f);

	CPoint3D& GetCentre();
	float GetRadius();

	virtual CPoint3D& GetLightSource(CPoint3D& point);
	virtual float Intersect(CRay& ray, CPoint3D& intersection, CPoint3D& normal);
	
private:
	CPoint3D Centre;
	float	 Radius;
};
